home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1995 October
/
EnigmA AMIGA RUN 01 (1995)(G.R. Edizioni)(IT)[!][issue 1995-10][Aminet 7].iso
/
Aminet
/
util
/
wb
/
Picticon1_4.lha
/
Picticon
/
Source
/
mod
/
fonts.e
< prev
next >
Wrap
Text File
|
1995-06-07
|
1KB
|
40 lines
OPT MODULE
OPT EXPORT
MODULE 'graphics','graphics/text','graphics/gfx'
MODULE 'mod/compare'
PROC fontsize2(rast,str,textfont2:PTR TO textfont,style)
DEF w=0,h=0,xor=0
DEF textextent:PTR TO textextent
NEW textextent
IF ((textfont2<>0) AND (rast<>0))
xor:=xor OR (IF ((textfont2.style AND 1)<>(style AND 1)) THEN 1 ELSE 0)
xor:=xor OR (IF ((textfont2.style AND 2)<>(style AND 2)) THEN 2 ELSE 0)
xor:=xor OR (IF ((textfont2.style AND 4)<>(style AND 4)) THEN 4 ELSE 0)
SetFont(rast,textfont2)
SetSoftStyle(rast,xor,7)
TextExtent(rast,str,StrLen(str),textextent)
w:=Abs(textextent.extent.minx)+Abs(textextent.extent.maxx)+1
h:=Abs(textextent.extent.miny)+Abs(textextent.extent.maxy)+1
/* IF xor AND FSF_BOLD THEN w:=w+1
IF xor AND FSF_UNDERLINED THEN w:=w+2
IF xor AND FSF_ITALIC THEN w:=w+4*/
ENDIF
END textextent
ENDPROC w,h
PROC biggest(rast,tags,textfont,style)
DEF w=0,h=0,nw,nh
WHILE Long(tags)<>0
nw,nh:=fontsize2(rast,Long(tags),textfont,style)
w:=bigger(w,nw)
h:=bigger(h,nh)
tags:=tags+4
ENDWHILE
ENDPROC w,h